package org.neurone.domain.alter;

import java.util.Date;
import java.util.List;

import org.neurone.domain.Message;

public abstract class MessageAlter implements Message {

	/**
	 * 系统ID
	 */
	protected Long messageID;
	/**
	 * 消息类型
	 */
	protected String messageType;
	/**
	 * 发件人
	 */
	protected String from;
	/**
	 * 收件人
	 */
	protected String to;
	/**
	 * 优先级
	 */
	protected int priority;
	/**
	 * 标题
	 */
	protected String topic;
	/**
	 * 内容
	 */
	protected String text;
	/**
	 * 发送时间
	 */
	protected Date postDate;
	
	/**
	 * 状态
	 */
	protected String status;
	/**
	 * 是否有效
	 */
	protected boolean available;
	
	/**
	 * 所属根消息
	 */
	protected Message belongToMessage;
	
	protected List<Message> replyList;
	
	@Override
	public Message getBelongToMessage() {
		return this.belongToMessage;
	}

	@Override
	public String getFrom() {
		return this.from;
	}

	@Override
	public Long getMessageID() {
		return this.messageID;
	}

	@Override
	public String getMessageType() {
		return this.messageType;
	}

	@Override
	public Date getPostDate() {
		return this.postDate;
	}

	@Override
	public int getPriority() {
		return this.priority;
	}

	@Override
	public String getStatus() {
		return this.status;
	}

	@Override
	public String getText() {
		return this.text;
	}

	@Override
	public String getTo() {
		return this.to;
	}

	@Override
	public String getTopic() {
		return this.topic;
	}

	@Override
	public boolean isAvailable() {
		return this.available;
	}
	@Override
	public List<Message> getReplyList() {
		return this.replyList;
	}
	public void setMessageType(String messageType) {
		this.messageType = messageType;
	}

	public void setFrom(String from) {
		this.from = from;
	}

	public void setTo(String to) {
		this.to = to;
	}

	public void setPriority(int priority) {
		this.priority = priority;
	}

	public void setTopic(String topic) {
		this.topic = topic;
	}

	public void setText(String text) {
		this.text = text;
	}

	public void setPostDate(Date postDate) {
		this.postDate = postDate;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public void setAvailable(boolean available) {
		this.available = available;
	}



}